[
   Module                                -- _1,
   PackageName                           -- _1,
   PackageName                           -- _1 _2 _3,
   Package                               -- KW["package"] _1 _2,
   ClassName                             -- _1,
   ClassName                             -- _1 _2 _3,
   InterfaceName                         -- _1,
   InterfaceName                         -- _1 _2 _3,
   Import                                -- KW["import"] _1 _2 _3 _4,
   Import                                -- KW["import"] _1 _2,
   Import                                -- KW["import"] _1 _2,
   JavaDoc                               -- V  [V vs=2 [KW["/**"] _1] KW["*/"]],
   JavaDoc.1:iter-star                   -- _1,
   Parameter                             -- _1 _2 _3,
   Type                                  -- _1 _2,
   ParameterList                         -- _1 _2,
   ParameterList.2:iter-star             -- _1,
   ParametroLinha                        -- _1,
   ParametroLinha.1:seq                  -- _1 _2,
   OperatorExpressionOne                 -- _1,
   OperatorExpressionOne                 -- _1,
   OperatorExpressionOne                 -- _1,
   OperatorExpressionTwo                 -- _1,
   OperatorExpressionTwo                 -- _1,
   OperatorExpressionThree               -- _1,
   OperatorExpressionThree               -- _1,
   OperatorExpressionThree               -- _1,
   OperatorExpressionThree               -- _1,
   OperatorExpressionThree               -- _1,
   OperatorExpressionThree               -- _1,
   OperatorExpressionThree               -- _1,
   OperatorExpressionThree               -- _1,
   OperatorExpressionThree               -- _1,
   OperatorExpressionThree               -- _1,
   NumericExpression                     -- _1 _2,
   NumericExpression                     -- _1 _2,
   NumericExpression                     -- _1 _2 _3,
   Expression                            -- _1,
   Expression                            -- _1,
   Expression                            -- _1,
   Expression                            -- _1,
   Expression                            -- _1,
   Expression                            -- _1,
   Expression                            -- _1,
   Expression                            -- _1,
   Expression                            -- KW["null"],
   Expression                            -- KW["super"],
   Expression                            -- KW["this"],
   Expression                            -- _1,
   Expression                            -- _1 _2 _3,
   Expression                            -- _1 _2 _3 _4,
   Expression.3:opt                      -- _1,
   Expression                            -- _1 _2 _3 _4,
   Expression                            -- _1 _2 _3,
   Expression                            -- _1 _2 _3,
   Expression                            -- _1 KW["instanceof"] _2,
   Expression                            -- _1 KW["instanceof"] _2,
   TestingExpression                     -- _1 _2 _3,
   LogicalExpression                     -- _1 _2,
   LogicalExpression                     -- _1 KW["ampersand"],
   LogicalExpression                     -- _1 KW["ampersand="],
   LogicalExpression                     -- _1 _2,
   LogicalExpression                     -- _1 _2,
   LogicalExpression                     -- _1 _2,
   LogicalExpression                     -- _1 _2,
   LogicalExpression                     -- _1 KW["ampersand"] KW["ampersand"],
   LogicalExpression                     -- _1 _2,
   LogicalExpression                     -- _1 _2,
   LogicalExpression                     -- _1 _2,
   LogicalExpression                     -- _1 _2 _3 _4 _5,
   LogicalExpression                     -- KW["true"],
   LogicalExpression                     -- KW["false"],
   StringExpression                      -- _1 _2 _3,
   StringExpression                      -- _1 _2 _3,
   BitExpression                         -- _1 _2,
   BitExpression                         -- _1 _2 _3,
   BitExpression                         -- _1 _2 _3,
   BitExpression                         -- _1 _2 _3,
   BitExpression                         -- _1 _2 _3,
   CastingExpression                     -- _1 _2 _3 _4,
   ArgList                               -- _1 _2,
   ArgList.2:iter-star                   -- _1,
   ArgListLinha                          -- _1,
   ArgListLinha.1:seq                    -- _1 _2,
   CreatingExpression                    -- KW["new"] _1 _2 _3 _4,
   CreatingExpression                    -- KW["new"] _1 _2,
   CreatingExpression                    -- KW["new"] _1 _2 _3 _4 _5,
   CreatingExpression                    -- KW["new"] _1 _2 _3 _4,
   CreatingExpression                    -- KW["new"] _1 _2 _3,
   LiteralExpression                     -- _1,
   LiteralExpression                     -- _1,
   LiteralExpression                     -- _1,
   LiteralExpression                     -- _1,
   FloatLiteral                          -- _1 _2 _3 _4 _5,
   FloatLiteral.3:opt                    -- _1,
   FloatLiteral.4:opt                    -- _1,
   FloatLiteral.5:opt                    -- _1,
   FloatLiteral                          -- _1 _2 _3 _4,
   FloatLiteral.3:opt                    -- _1,
   FloatLiteral.4:opt                    -- _1,
   FloatLiteral                          -- _1 _2 _3,
   FloatLiteral.2:opt                    -- _1,
   FloatLiteral.3:opt                    -- _1,
   CharLiteral                           -- _1,
   variableInitializer                   -- _1,
   variableInitializer                   -- _1 _2 _3,
   variableInitializer.2:opt             -- _1,
   variableInitializer                   -- _1 _2 _3 _4,
   variableInitializer.3:iter-star       -- _1,
   variableInitializer.3:iter-star.1:seq -- _1 _2,
   VariableDeclarator                    -- _1 _2,
   VariableDeclarator.2:opt              -- _1,
   VariableDeclaratorLinha               -- _1,
   VariableDeclarator                    -- _1 _2 KW["="] _3,
   VariableDeclaration                   -- _1 _2 _3 _4 _5,
   VariableDeclaration.1:opt             -- _1,
   VariableDeclaration.4:opt             -- _1,
   VariableDeclarationLinhaTres          -- _1,
   VariableDeclaratorLinha               -- _1 _2 _3,
   VariableDeclaratorLinhaDois           -- _1,
   Statement                             -- _1,
   Statement                             -- _1 _2,
   Statement                             -- _1,
   Statement                             -- _1,
   Statement                             -- _1,
   Statement                             -- _1,
   Statement                             -- _1,
   Statement                             -- _1,
   Statement                             -- _1,
   Statement                             -- KW["synchronized"] _1 _2 _3 _4,
   Statement                             -- KW["return"] _1 _2,
   Statement.1:opt                       -- _1,
   StatementLinha                        -- _1,
   Statement                             -- KW["throw"] _1 _2,
   Statement                             -- _1 _2 _3,
   Statement                             -- KW["break"] _1 _2,
   Statement.1:opt                       -- _1,
   StatementLinhaDois                    -- _1,
   Statement                             -- KW["continue"] _1 _2,
   Statement                             -- _1,
   StatementBlock                        -- _1 _2 _3,
   StatementBlock.2:iter-star            -- _1,
   IfStatement                           -- KW["if"] _1 _2 _3 _4 _5,
   IfStatement.5:opt                     -- _1,
   IfStatementLinha                      -- KW["else"] _1,
   DoStatement                           -- KW["do"] _1 KW["while"] _2 _3 _4 _5,
   WhileStatement                        -- KW["while"] _1 _2 _3 _4,
   ForStatement                          -- KW["for"] _1 _2 _3 _4 _5 _6 _7,
   ForStatement.3:opt                    -- _1,
   ForStatement.5:opt                    -- _1,
   ForLinhaUm                            -- _1,
   ForLinhaUm                            -- _1 _2,
   ForLinhaUm                            -- _1,
   ForLinhaDois                          -- _1,
   TryStatement                          -- KW["try"] _1 _2 _3,
   TryStatement.2:iter-star              -- _1,
   TryStatement.2:iter-star.1:seq        -- KW["catch"] _1 _2 _3 _4,
   TryStatement.3:opt                    -- _1,
   TryStatementLinha                     -- _1,
   TryStatementLinha.1:seq               -- KW["finally"] _1,
   Switch                                -- KW["switch"] _1 _2 _3 _4,
   SwitchBlock                           -- _1 _2 _3 _4,
   SwitchBlock.2:iter-star               -- _1,
   SwitchBlock.3:iter-star               -- _1,
   SwitchGroup                           -- _1 _2,
   SwitchGroup.1:iter                    -- _1,
   SwitchGroup.2:iter                    -- _1,
   Case                                  -- KW["case"] _1 _2,
   Default                               -- KW["default"] _1,
   MethodDeclaration                     -- _1 _2 _3 _4 _5 _6 _7 _8,
   MethodDeclaration.1:iter-star         -- _1,
   MethodDeclaration.5:opt               -- _1,
   MODIFIER                              -- KW["public"],
   MODIFIER                              -- KW["private"],
   MODIFIER                              -- KW["protected"],
   MODIFIER                              -- KW["static"],
   MODIFIER                              -- KW["final"],
   MODIFIER                              -- KW["native"],
   MODIFIER                              -- KW["synchronized"],
   MODIFIER                              -- KW["abstract"],
   MODIFIER                              -- KW["threadsafe"],
   MODIFIER                              -- KW["transient"],
   MethodDeclarationLinha                -- _1,
   MethodDeclarationLinha                -- _1,
   TypeSpecifier                         -- KW["boolean"],
   TypeSpecifier                         -- KW["byte"],
   TypeSpecifier                         -- KW["char"],
   TypeSpecifier                         -- KW["short"],
   TypeSpecifier                         -- KW["int"],
   TypeSpecifier                         -- KW["float"],
   TypeSpecifier                         -- KW["long"],
   TypeSpecifier                         -- KW["double"],
   ConstrutorDeclaration                 -- _1 _2 _3 _4 _5 _6,
   ConstrutorDeclaration.1:iter-star     -- _1,
   ConstrutorDeclaration.4:opt           -- _1,
   StaticInitializer                     -- KW["static"] _1,
   FieldDeclaration                      -- _1 _2,
   FieldDeclaration.1:opt                -- _1,
   FieldDeclaration                      -- _1,
   FieldDeclaration                      -- _1,
   FieldDeclarationLinhaDois             -- _1,
   FieldDeclarationLinhaDois             -- _1,
   FieldDeclarationLinhaDois             -- _1,
   FieldDeclarationLinhaTres             -- _1,
   FieldDeclarationLinhaQuatro           -- _1,
   ClassDeclaration                      -- _1 KW["class"] _2 _3 _4 _5 _6 _7,
   ClassDeclaration.1:iter-star          -- _1,
   ClassDeclaration.3:opt                -- _1,
   ClassDeclaration.4:opt                -- _1,
   ClassDeclaration.6:iter-star          -- _1,
   InterfaceName                         -- _1,
   InterfaceName.1:iter-star             -- _1,
   InterfaceName.1:iter-star.1:seq       -- _1 _2,
   ClassDeclarationLinha                 -- _1,
   ClassDeclarationLinha.1:seq           -- KW["extends"] _1,
   ClassDeclarationLinhaDois             -- _1,
   ClassDeclarationLinhaDois.1:seq       -- KW["implements"] _1 _2,
   ClassDeclarationLinhaDois.1:seq.2:opt -- _1,
   InterfaceDeclaration                  -- _1 KW["interface"] _2 _3 _4 _5 _6,
   InterfaceDeclaration.1:iter-star      -- _1,
   InterfaceDeclaration.3:opt            -- _1,
   InterfaceDeclaration.5:iter-star      -- _1,
   InterfaceDeclarationLinha             -- _1,
   InterfaceDeclarationLinha.1:seq       -- KW["extends"] _1 _2,
   InterfaceDeclarationLinha.1:seq.2:opt -- _1,
   TypeDeclaration                       -- _1 _2,
   TypeDeclaration.1:opt                 -- _1,
   TypeDeclarationLinhaDois              -- _1,
   TypeDeclarationLinhaDois              -- _1,
   CompilationUnit                       -- _1 _2 _3,
   CompilationUnit.1:opt                 -- _1,
   CompilationUnit.2:iter-star           -- _1,
   CompilationUnit.3:iter-star           -- _1
]